<?php
require_once ('controller/PersistentController.php');
require_once ('model/UserTools.php');


class Admin_LoginController extends PersistentController
{
	
	public function run() {
		/*
		 * Caso d'uso alternativo/1: se l'admin è già loggato, lo spediamo al menu di amministrazione
		 */
		if (UserTools::userIsLogged() && UserTools::userIsRole('admin')) {
			$this->_redirect('admin_index');
		}
		
		/*
		 * Caso d'uso flusso principale: verifichiamo se è stato fatto il submit del form, 
		 * ed in tal caso verifichiamo il login
		 */
		if ($this->_getRequest()->isPost()) {
			$login = $this->_getRequest()->getPost('login');
			
			if (UserTools::login($login['email'], $login['password'], 'admin')) {
				// flusso principale
				$this->_redirect('admin_index');
			} 
			else {
				// flusso alternativo/2
				$this->_view->errors = true;
			}
		}
	}
}